home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / kdeprint / kmtimer.h < prev    next >
Encoding:
C/C++ Source or Header  |  2005-10-10  |  1.7 KB  |  63 lines

  1. /*
  2.  *  This file is part of the KDE libraries
  3.  *  Copyright (c) 2001 Michael Goffioul <kdeprint@swing.be>
  4.  *
  5.  *  This library is free software; you can redistribute it and/or
  6.  *  modify it under the terms of the GNU Library General Public
  7.  *  License version 2 as published by the Free Software Foundation.
  8.  *
  9.  *  This library is distributed in the hope that it will be useful,
  10.  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.  *  Library General Public License for more details.
  13.  *
  14.  *  You should have received a copy of the GNU Library General Public License
  15.  *  along with this library; see the file COPYING.LIB.  If not, write to
  16.  *  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  17.  *  Boston, MA 02110-1301, USA.
  18.  **/
  19.  
  20. #ifndef KMTIMER_H
  21. #define KMTIMER_H
  22.  
  23. #if !defined( _KDEPRINT_COMPILE ) && defined( __GNUC__ )
  24. #warning internal header, do not use except if you are a KDEPrint developer
  25. #endif
  26.  
  27. #include <qtimer.h>
  28. #include <kdelibs_export.h>
  29.  
  30. /**
  31.  * @internal
  32.  * This class is internal to KDEPrint and is not intended to be
  33.  * used outside it. Please do not make use of this header, except
  34.  * if you're a KDEPrint developer. The API might change in the
  35.  * future and binary compatibility might be broken.
  36.  */
  37. class KDEPRINT_EXPORT KMTimer : public QTimer
  38. {
  39.     Q_OBJECT
  40. public:
  41.     void delay(int t);
  42.     ~KMTimer();
  43.  
  44. public slots:
  45.     void hold();
  46.     void release();
  47.     void release(bool do_emit);
  48.  
  49.     static KMTimer* self();
  50.  
  51. private slots:
  52.     void slotTimeout();
  53.  
  54. private:
  55.     static KMTimer    *m_self;
  56.     int    m_count;
  57.     KMTimer(QObject *parent = 0, const char *name = 0);
  58.     void releaseTimer(bool do_emit = false);
  59.     void startTimer(int delay = -1);
  60. };
  61.  
  62. #endif
  63.